a382033be6c5c137a6b56ab4e78c08d8f34707f4,main/src/java/main/self/micromagic/eterna/share/Tool.java,Tool,getCaptionTranslateMap,#EternaFactory#,110

Before Change


			}
			else
			{
				factory.setAttribute(CAPTION_TRANSLATE_MAP_TAG, translateMap);
			}
			factory.setAttribute(CAPTION_TRANSLATE_MAP_FACTORY_TAG, factory);
		}

After Change


			throws EternaException
	{
		Object checkObj = factory.getAttribute(CAPTION_TRANSLATE_TAG);
		if (checkObj == null || checkObj instanceof Map)
		{
			return (Map) checkObj;
		}
		String translateDef = (String) checkObj;
		Map baseMap = null;
		EternaFactory share = factory.getShareFactory();
		if (share != null)
		{
			baseMap = getCaptionTranslateMap(share);
			// 如果没在当�工厂定义, 则�获�一次则会��map
			checkObj = factory.getAttribute(CAPTION_TRANSLATE_TAG);
			if (checkObj instanceof Map)
			{
				return (Map) checkObj;
			}
		}
		Map translateMap = baseMap == null ? new HashMap() : new HashMap(baseMap);
		String[] tmps = StringTool.separateString(
				Utility.resolveDynamicPropnames(translateDef), ";", true);
		for (int i = 0; i < tmps.length; i++)
		{
			int index = tmps[i].indexOf('=');
			if (index != -1)
			{
				translateMap.put(tmps[i].substring(0, index).trim(),
						tmps[i].substring(index + 1).trim());
			}
		}
		factory.setAttribute(CAPTION_TRANSLATE_TAG, translateMap);
		return translateMap;
	}